<?php

/**
 * Контроллер действия-списка.
 *
 */
class Kernel_Controller_List extends Kernel_Controller_Tokened {

    /**
     * Возвращает описание компонента, который обработает действие, полученное
     * из запроса.
     *
     * @return  Kernel_Token
     */
    protected function _getFilterToken() {
        return ($id = $this->_id()) > 0
            ? new Kernel_Token('view', array('id' => $id)) : 'list';
    }

    /**
     * Возвращает идентификатор запрошенной страницы.
     *
     * @return  integer
     */
    protected function _id() {
        return Application::getRequest()->id();
    }

    /**
     * Возвращает наименование класса компонента, который обработает запрошенное
     * действие.
     *
     * @param   string  $name
     * @return  string
     */
    protected function _getFilterClassName($name) {
        return get_class($this) . '_' . ucfirst($name);
    }
}
